
'use strict';
module.exports = () => {
  return async (ctx, next) => {
    // 查询用户名是否被占中间件
    const { user_name } = ctx.request.body;
    // 合理性
    try {
      const res = await ctx.service.user.getUserInfo({ user_name });
      if (res) {
        return ctx.helper.error('用户名已被占，请更换用户名', 400);
      }
    } catch (error) {
      console.error('获取用户信息异常', error);
      return ctx.helper.error(error.errors[0].message, 400);
    }
    await next();
  };
};
